\bibliographystyle{gbt7714-2005}

\chapter{Python中的面向对象编程}

\epigraphhead[60]{\epigraph{Complex is better than complicated.}{\textit{Tim Peters《The Zen of Python》}}}

面向对象程序设计（英语：Object-oriented programming，缩写：OOP）是一种程序设计范型，同时也是一种程序开发的方法。对象指的是类的实例。它将对象作为程序的基本单元，将程序和数据封装其中，以提高软件的重用性、灵活性和扩展性。\cite{Booch，2009}

面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想，这与传统的思想刚好相反：传统的程序设计主张将程序看作一系列函数的集合，或者直接就是一系列对电脑下达的指令。面向对象程序设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象，因此它们都可以被看作一个小型的“机器”，即对象。

目前已经被证实的是，面向对象程序设计推广了程序的灵活性和可维护性，并且在大型项目设计中广为应用。

\input{Python/oop/ObjectAndClass.tex}
\input{Python/oop/OperatorOverloading.tex}
\input{Python/oop/InheritanceAndPolymorphism.tex}

\bibliography{../bib/yangjh}
